home *** CD-ROM | disk | FTP | other *** search
/ Qu.......ke Neue Level / KroGer Software GmbH - Qu_ke.iso / UTILITY / PRG8.ZIP / Q_MISC.H < prev    next >
C/C++ Source or Header  |  1996-03-02  |  2KB  |  82 lines

  1. /*
  2.  * Copyright (C) 1996 by Raphael Quinet.  All rights reserved.
  3.  *
  4.  * Permission to use, copy, modify, and distribute this software and
  5.  * its documentation for any purpose and without fee is hereby
  6.  * granted, provided that the above copyright notice appear in all
  7.  * copies and that both that copyright notice and this permission
  8.  * notice appear in supporting documentation.  If more than a few
  9.  * lines of this code are used in a program which displays a copyright
  10.  * notice or credit notice, the following acknowledgment must also be
  11.  * displayed on the same screen: "This product includes software
  12.  * developed by Raphael Quinet for use in the Quake Editing Utilities
  13.  * project."  THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR
  14.  * IMPLIED WARRANTY.
  15.  *
  16.  * More information about the QEU project can be found on the WWW:
  17.  * "http://www.montefiore.ulg.ac.be/~quinet/games/editing.html" or by
  18.  * mail: Raphael Quinet, 9 rue des Martyrs, B-4550 Nandrin, Belgium.
  19.  */
  20.  
  21. #ifndef _Q_MISC_H_
  22. #define _Q_MISC_H_
  23. /*
  24.  * Q_MISC.H - Error logs, memory management, selection of objects, etc.
  25.  */
  26.  
  27. /*
  28.  * Typedefs
  29.  */
  30.  
  31. /* The selection list is used when more than one object is selected. */
  32. typedef struct SelectionList *SelPtr;
  33. struct SelectionList
  34. {
  35.    SelPtr next;                 /* next in list */
  36.    Int16  objnum;               /* object number */
  37. };
  38.  
  39. /*
  40.  * Prototypes
  41.  */
  42. void  MSleep(int msec);
  43.  
  44. void  ProgWarning(char *errstr, ...);
  45. void  ProgError(char *errstr, ...);
  46. void  LogMessage(char *logstr, ...);
  47. void  OpenLogFile(char *logfilename);
  48. void  CloseLogFile(void);
  49.  
  50. Bool  IsSelected(SelPtr list, Int16 objnum);
  51. void  SelectObject(SelPtr *list, Int16 objnum);
  52. void  UnSelectObject(SelPtr *list, Int16 objnum);
  53. void  ForgetSelection(SelPtr *list);
  54.  
  55. void huge *QMalloc(UInt32 size);
  56. void huge *QRealloc(void huge *old, UInt32 size);
  57. void  QFree(void huge *ptr);
  58. UInt8 huge *QMemDup(UInt8 huge *src, UInt32 size);
  59.  
  60. char *QStrDup(char *src);
  61. char *QStrNCpy(char *dest, char *src, int n);
  62. char *QStrNDupHack(char *src, int n);
  63.  
  64. #ifndef QEU_DOS
  65. char *strupr(char *s);
  66. #define stricmp(s1, s2)     strcasecmp(s1, s2)
  67. #define strnicmp(s1, s2, n) strncasecmp(s1, s2, n)
  68. #endif
  69.  
  70. #ifdef FAT_ENDIAN
  71. UInt16 SwapInt16(UInt16 x);
  72. UInt32 SwapInt32(UInt32 x);
  73. Float32 SwapFloat32(Float32 x);
  74. #else
  75. #define SwapInt16(x)        (x)
  76. #define SwapInt32(x)        (x)
  77. #define SwapFloat32(x)      (x)
  78. #endif /* FAT_ENDIAN */
  79.  
  80. #endif /* _Q_MISC_H_ */
  81. /* end of file */
  82.